/*
*	Created:			06.03.10
*	Author:				009
*	Last Modifed:		-
*/

// plugin
#include "os.h"

class FakeClass {};

#ifdef WIN32
	typedef void (FakeClass::* FakeMethod)();
	typedef void (FakeClass::* f_ClientConnect)(int,char*,int);
	typedef void (FakeClass::* f_ClientDisconnect)(int,int);
	typedef void (FakeClass::* f_SpawnForWorld)();
	typedef void (FakeClass::* f_SetSpawnInfoPointer)(int[]);
	typedef void (* f_SetSkinPointer)(int,int[]);
	typedef void (FakeClass::* f_KillForWorld)(int,int);
	typedef void (FakeClass::* f_SetWeaponSkill)(int,int);
#else
	typedef void (* FakeMethod)();
	typedef void (* f_ClientConnect)(FakeClass*,int,char*,int);
	typedef void (* f_ClientDisconnect)(FakeClass*,int,int);
	typedef void (* f_SpawnForWorld)(FakeClass*);
	typedef void (* f_SetSpawnInfoPointer)(FakeClass*,int[]);
	typedef void (* f_SetSkinPointer)(int,int[]);
	typedef void (* f_KillForWorld)(FakeClass*,int,int);
	typedef void (* f_SetWeaponSkill)(FakeClass*,int,int);
#endif

void HooksInstall(int version);

int SpawnForWorld(DWORD c_player_struct);
int SetSpawnInfo(DWORD c_player_struct,int info[]);
int SetSkinData(int playerid,int skin);
int KillForWorld(DWORD c_player_struct,int killerid,int reason);
int SetWeaponSkill(DWORD c_player_struct,int weapontype,int level);